package JavaSE.CODE.javaCollection;

import java.util.TreeSet;

/**
 * TreeSet的使用
 * 存储结构：红黑树
 * 判断方法：如果compareTo结果为0，就认为是重复、存在、删除目标
 */

//接口还要导入:因为构造了接口的引用，所以要导入

public class TreeSetDemo {
    public static void main(String[] args) {
        TreeSet<Person> treeSet = new TreeSet<>();
        treeSet.add(new Person("xyz",10));
        treeSet.add(new Person("abc",9));
        treeSet.add(new Person("hij",12));
        treeSet.add(new Person("hij",12));//重复
        //直接添加会导致：ClassCastException
        //原因是：没有实现Comparable接口，即没有实现CompareTo方法，不能加入TreeSet中，因为加入过程中不知道怎么比较
        //让Person类实现Comparable接口即可

        System.out.println("元素个数" + treeSet.size());
        treeSet.remove(new Person("hij",12));
        System.out.println("元素个数" + treeSet.size());

        //在重写之前，只能通过引用来删除？
    }
}
